/*
 * Copyright (C) 2017-2021
 * All rights reserved, Designed By
 * Copyright authorization contact 18814114118
 */
package com.shop.cereshop.commons.domain.bond;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * cere_shop_bond 店铺保证金实体类
 * 
 * @author
 */
@Data
@TableName("cere_shop_bond")
@ApiModel(value = "CereShopBond", description = "店铺保证金实体类")
public class CereShopBond implements Serializable {

  /**
   * 保证金ID
   */
  @TableId(type = IdType.AUTO)
  @ApiModelProperty(value = "保证金ID")
  private Long bondId;

  /**
   * 关联店铺ID
   */
  @ApiModelProperty(value = "关联店铺ID")
  private Long shopId;

  /**
   * 保证金金额
   */
  @ApiModelProperty(value = "保证金金额")
  private BigDecimal bondAmount;

  /**
   * 需要缴纳的保证金金额
   */
  @ApiModelProperty(value = "需要缴纳的保证金金额(阈值)")
  private BigDecimal needPayAmount;

  /**
   * 入驻保证金上缴状态 0-未缴纳 1-已缴纳
   */
  @ApiModelProperty(value = "入驻保证金上缴状态 0-未缴纳 1-已缴纳")
  private Integer state;

  /**
   * 缴纳时间
   */
  @ApiModelProperty(value = "缴纳时间")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  private LocalDateTime payTime;

  /**
   * 创建时间
   */
  @ApiModelProperty(value = "创建时间")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @JsonIgnore
  private LocalDateTime createTime;

  /**
   * 更新时间
   */
  @ApiModelProperty(value = "更新时间")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @JsonIgnore
  private LocalDateTime updateTime;

  private static final long serialVersionUID = 1L;
}